/*
 * @Author: LVGRAPE
 * @LastEditors: LVGRAPE
 */
/*
 * @Author: EltonLi lijiaming@uavi-tech.com
 * @Date: 2023-09-12 11:15:08
 * @LastEditors: LVGRAPE
 * @LastEditTime: 2025-06-27 15:55:39
 * @FilePath: \zino-fc-v4\applications\ZINO_FC_V4.0\statecalculate\statecal.h
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
#ifndef __STATECAL_H__
#define __STATECAL_H__

#ifdef __cplusplus
extern "C"
{
#endif

#include <rtdef.h>
#include "imu.h"
    typedef struct
    {
        float pos[3];
        float vel[3];
        float acc[3];
    } estimator_t;
    extern estimator_t zroneEstimator;

    extern float fusedHeightLpf;
    void positionEstimate(fc_sensor_data_t* sensor, m_imu_t* imu, zdrone_state_t* state, float dt);
    float get_tof_height_lfp(void);
    float get_accy_lpf(void);
    float get_accx_lpf(void);
#ifdef __cplusplus
}
#endif

#endif
